Method and system for providing contact management to chat session participants

ABSTRACT

The present invention provides a method and system for providing contact management to participants engaged in a communication session. The invention permits chat session participants to a communication session to determine common contacts that exists between the chat session participants. Dependent on the accessibility of the particular chat session participants&#39; contact list, other chat session participants to the communication session can view the information located in the contact list. Moreover, a particular chat session participant to the communication session can give either a particular chat session participant or all the chat session participants to the communication session permission to modify their contact list. Permission to access or modify contact lists for chat session participants can be defined prior to establishment of the communication session and/or changed during the communication session. Changes relating to whether a particular contact list is accessible and/or modifiable can be initiated by the chat session participant associated with the contact list. Additionally, such changes can be initiated by a request from a chat session participants to modify the contact records in a particular contact list. The invention can be applicable to systems which can include, but is not limited to, chat rooms, instant messaging, and call conferencing.

BACKGROUND OF THE INVENTION

[0001] 1. Technical Field

[0002] The present invention relates to the field of remote multiusergroup communication and messaging and more particularly, to a method andsystem for managing contact information for participants engaged in achat session.

[0003] 2. Description of the Related Art

[0004] The Internet and Intranets provide a medium for bringing togetherusers that have a common interest. Internet and Intranet chat sessionstypically provide such a medium. Chat sessions can be hosted by a serverwhich runs the chat application. A participant in a chat sessiontypically can access the chat session using a browser or a specializedchat session software referred to as a “chat client.” In the case of abrowser, the browser can facilitate the client by invoking the chatclient.

[0005] Chat sessions have progressed from supporting single line textinterface similar to the well known Internet Relay Chat (IRC), tosupporting sophisticated graphical user interface (GUI) chat clients.These GUI-based chat client can process still images, realtime images,audio data, text data and information about a particular user. Userinformation typically is stored in a file called a user profile. Theinformation contained in a user profile can include personalinformation, such as name, age, address, and place of birth. Generalinformation about a user can also be stored in the user profile. Forexample, general information can include special interest such ashobbies, sports and activities. Where a user is related to a business,business related information such as suppliers, manufacturers andretailers can also be stored in the user profile.

[0006] During a chat session, in addition to seeing the text typed by auser or the audio spoken by a user, profile information can be acquiredfor a particular user by, for example, selecting a corresponding useridentifier from a list of user identifiers presented in the chat sessionclient and viewing the selected user profile. Still, although chatsessions provide a medium for multiuser communication, they lack theability to effectively manage contact information for users.

SUMMARY OF THE INVENTION

[0007] The invention provides a method and apparatus for providingcontact management for participants engaged in a chat session.Participants engaged in the chat session can each have a contact list.Notably, a first chat session participant can have a first contact listand a second chat session participant can have a second contact list.Access to the first contact list can be provided to the second chatsession participant. Similarly, access to the second contact list can beprovided to the first chat session participant. A determination can bemade as to whether the first contact list can be modified by the secondchat session participant. If the first contact list is modifiable by thesecond chat session participant, the second chat session participant canbe permitted to modify the first contact list. This modification caninclude, but is not limited to, the addition of contact information tothe first contact list.

[0008] An icon can be displayed to indicate whether the first contactlist is accessible. By altering the displayed icon, the displayed iconcan be further utilized to indicate whether the first contact list canalso be modified. A second icon can be displayed to indicate whether thesecond contact list is accessible. By altering the displayed icon, thedisplayed icon can be further utilized to indicate whether the secondcontact list can also be modified.

[0009] A third chat session participant can be permitted to select anyof the icons representing the first and the second contact list. Thisthird chat session participant can also have a third contact list and anicon can be used to indicate whether the third contact list isaccessible and/or modifiable. By selecting the first and second contactlist icons, a comparison can be made between the first, second, andthird contact lists. The results of the comparison can include a displayof dissimilar contacts that exist between the first, the second and thethird contact lists. The results of the comparison can also include adisplay of similar contacts that exist between the first, the second andthe third contact lists.

[0010] The method can further include the steps of permitting any of thechat session participants to modify a contact list of another chatsession participant. However, the chat session participant whose contactlist has been modified can be permitted to reject any modification thathas been made to their contact list. In the case where an icon indicatesthat a first contact list is not modifiable, then a second chat sessionparticipant wishing to modify the first contact list can requestpermission from the first chat session participant to modify the firstcontact list. In the case where an icon indicates that a second contactassociated with the second chat participant is not modifiable, then afirst chat session participant wishing to modify the second contact listcan request permission from the second chat session participant tomodify the second contact list.

[0011] The method for providing contact management can further includethe steps of requesting the first chat session participant to provideaccess to the first contact list and requesting the second chat sessionparticipant to provide access to the second contact list. Furthermore,accessibility status for a particular contact list can be provided toselected chat session participants or to all chat session participants.

[0012] An alternative embodiment of the invention includes a method forproviding contact management to parties engaged in a chat communicationsession. Each participant to the communication session can have anassociated contact list. Hence, a first participant to the communicationsession has a first contact list and a second participant to thecommunication session has a second contact list. The method can includethe steps of making the first contact list accessible to a secondcommunication session participant and identifying similar and/ordissimilar contacts that exist between contact records located in thefirst contact list and contact records located in the second contactlist. Selected dissimilar contact records located in the first contactlist can be subsequently added to the second contact list.

[0013] The method can further include the step of determining if thefirst contact list can be modified by the second participant to thecommunication session. If the first contact list is modifiable by thesecond participant, selected dissimilar contact records can be added tothe first contact list by the second participant. The step of providingaccess to a particular contact list can include the step of determiningan accessibility status of the first contact list and providing accessto the first contact list if the accessibility status indicates that thesecond participant is permitted to access the first contact list. Asimilar determination can be made as to whether the second contact listis accessible by the first participant to the communication session. Ifthe second contact list is accessible by the first participant, similarcontacts that exist between contact records located in the secondcontact list and contact records located in the first contact list canbe identified. If the second contact list is modifiable by the firstparticipant to the communication session, selected dissimilar contactrecords located in the second contact list can be added to the firstcontact list.

[0014] Additionally, the method can further include the step ofdisplaying an icon to represent whether a contact list for a participantto the communication session is accessible. If the contact list is alsomodifiable, then the display icon can be further modified to indicatethat the contact list is also modifiable.

[0015] A further embodiment of the invention includes a method forproviding contact management to chat session participants. A first chatsession participant can have a first associated contact list and asecond chat session participant can have a second associated contactlist. The method can include the steps of permitting access to the firstcontact list by the second chat session participant and permittingaccess to the second contact list by the first chat session participant.A modification status can be provided to indicate whether the firstcontact list is modifiable. If the modification status indicates thatthe first contact list is modifiable, then the addition of contactinformation to the first contact list is permitted. Similarly, amodification status can be provided to indicate whether the secondcontact list is modifiable. If the modification status indicates thatthe second contact list is modifiable, then the addition of contactinformation to the second contact list is permitted. The modificationstatus of the first and the second contact lists can be provided toselected chat session participants or to all chat session participants.

[0016] In yet a further embodiment of the invention, a method forproviding contact management in a chat session is provided. The methodcan include the step of sending a token of introduction from a firstchat session participant to a second chat session participant. The firstchat session participant can have a first contact list and the secondchat session participant can have a second contact list. The token ofintroduction can provide a recommendation for the second chat sessionparticipant. The token of introduction can be transferred to a thirdchat session participant who is known to the first chat sessionparticipant. The third chat session participant can have a third contactlist. If the third chat session participant accepts the token ofintroduction, the third contact list can be modified with contactinformation for the second chat session participant. The method canfurther include the step of modifying the second contact list withinformation for the third chat session participant. The token ofintroduction can be configured to expire after a specified period oftime. The transferring step can be executed whenever the third chatsession participant initiates a chat session with the second chatsession participant.

[0017] The invention further provides a system for contact management.The system can include a first contact list that is associated with afirst chat session participant. A second chat session participant havingan associated second contact list can be engaged in a chat session withsaid first chat session participant. A computing application program canfacilitate the chat session. The application program can permit thesecond chat session participant to modify the first contact list and canalso permit the first chat session participant to modify the secondcontact list. The system can further include a computer applicationserver for executing the computing application program. A firstcomputing device can permit the first contact list to be viewed by thesecond chat session participant and a second computing device can permitthe second contact list to be viewed by the first chat sessionparticipant.

[0018] In a further embodiment of the invention, a GUI for providingcontact management for chat session participants is provided. The GUIcan include a chat display window for displaying communication for thechat session participants, including a first chat session participantand a second chat session participant engaged in a chat session. Atleast one contact window can be provided for displaying contactinformation for at least one chat session participant engaged in thechat session. The GUI can have at least one contact window which canappear as a window pane within the chat display window. Alternately, theGUI can have at least one contact window that can be a window panelocated external to the chat display window. A first modifiable statusicon can be utilized for indicating whether the first contact list isaccessible and if the first contact list is accessible, whether thefirst contact list is modifiable. A second status icon can indicatewhether the second contact list is accessible and if the second contactlist is accessible, whether the second contact list is modifiable.

[0019] The invention also provides a machine readable storage havingstored thereon, a computer program with a plurality of code sectionsthat can be executed by a machine for causing the machine to perform thesteps associated with the foregoing methods.

BRIEF DESCRIPTION OF THE DRAWINGS

[0020] There are shown in the drawings embodiments which are presentlypreferred, it being understood, however, that the invention is notlimited to the precise arrangements and instrumentalities shown,wherein:

[0021]FIG. 1 is a high level block diagram of an exemplary system forproviding contact management for chat session participants; and

[0022]FIG. 2 illustrates an exemplary modification of a contact list ina chat session in accordance with the inventive arrangements of FIG. 1.

DETAILED DESCRIPTION OF THE INVENTION

[0023] The present invention provides a method and system for providingcontact management for chat session participants. Each participantengaged in a chat session can have a contact list. A contact list is alist maintained by a chat session user which can contain contactinformation related to friends, associates, and acquaintances. Where thechat session user is related to a business, then the contact informationcan contain business related information such as information aboutmanufacturers, retailers, wholesalers and customers. For example, afirst chat session participant can have a first contact list and asecond chat session participant can have a second contact list. In orderto share information, access to the first contact list can be providedto the second chat session participant. Similarly, access to the secondcontact list can be provided to the first chat session participant.Access can include the ability to view the contents of another chatsession participant's contact list. A particular chat sessionparticipant can be permitted make their associated contact listinaccessible by all participants that either don't have a contact listor those chat session participants that don't make their contact listaccessible.

[0024] Although individual chat session participants can view the entirecontents of a particular chat session participant's contact list, thecontact list can be configured so that only certain areas of the contactlist are accessible by individual chat session participants. Forexample, a particular area of a contact list can be dedicated to theaddition of contacts from other chat session participants. The chatsession participant for a particular contact list can have completeautonomy to designate what areas, if any, will be accessible to aparticular user.

[0025] Importantly, it should be recognized that although the contactlist can be associated with an individual chat session participant, thecontact list can also be associated with an entity such as a business.Although each chat session participant can have a contact list, itshould be recognized that the invention in not limited in this way. Atleast one chat session participant having a contact list is required inorder for other chat session participants to access a contact list.Moreover, at least two chat session participants having contact liststhat are accessible are required in order to compare contact listrecords. A chat session participant can include anyone accessing thechat session. Hence, it is not necessary for a participant to beactually chatting to be a participant.

[0026] A method for providing contact management can include determiningthe modification status of a first contact list. The modification statuscan be defined as the right of chat session participants to makemodifications to a particular contact list. Although a particularcontact list can be accessed by other chat session participants, anindividual chat session participant might not have the right to modifythe contact list of another chat session participant. Hence, themodification status or rights can indicate whether the contact list canbe modified by a particular chat session participant or by all the chatsession participants. Returning to the previous example, if themodification status or rights indicate that the first contact list canbe modified by the second chat session participant, the second chatsession participant can be permitted to modify the first contact list.

[0027] Modifications to the contact list can include, but are notlimited to, the addition of contact information to the contact list. Themodifications to a contact list can also include adding a completely newentry, correcting an existing entry, and deleting an existing entry.Even though a chat session participant can make modifications to aparticular contact list, in one aspect of the invention, the person orentity to which a contact list is associated can choose to accept orreject the modification.

[0028] In a further aspect of the invention, an icon can be displayed toindicate whether a particular contact list is accessible. The displayedicon can further indicate whether a particular contact list can also bemodified. While the icon used to indicate the modification status orrights and the icon used to represent the accessibility status or rightscan be the same icon, it should be readily understood that two separateicons can be utilized. Hence, a single icon can be modified to indicateboth the modification and the accessibility status or rights.

[0029] A particular chat session participant can be permitted to selectany of the icons representing the contact lists of other chat sessionparticipants. By selecting the icons representing the contact lists ofother chat session participants, the particular chat session participantcan compare the contact list of other chat session participants withthat of their own. For example, a third chat session participant can bepermitted to select any of the icons representing the first contact listfor the first chat session participant and the second contact list forthe second chat session participant. This third chat session participantcan also have a third contact list and a third icon can be used toindicate whether the third contact list is accessible and/or modifiable.The third chat session participant can be permitted to select the firstand second contact list icons in order to compare the contact recordscontained in the first, second, and third contact lists. The results ofthe comparison can include a display of similar and dissimilar contactsthat exist between the first, the second and the third contact lists. Inone aspect of the invention, the similar contacts records can behighlighted in a first color and the dissimilar contact records can behighlighted in a different color.

[0030] Any of the chat session participants can be permitted to modify acontact list of another chat session participant. However, the chatsession participant for whom the contact list has been modified, can bepermitted to reject any modification that has been made to their contactlist. As a result, any change to a participant's contact list by anotherparticipant can be temporary. The change to the participant's contactlist can be made permanent by the participant associated with thecontact list accepting the change.

[0031] Where a particular contact list is not modifiable, permission canbe requested to modify that particular contact list. For example,returning to the previous example, where an icon indicates that a firstcontact list is not modifiable, then a second chat session participantwishing to modify the first contact list can be permitted to initiate arequest to grant permission from the first chat session participant tomodify the first contact list. In another example, where an iconindicates that a second contact list is not modifiable, then a firstchat session participant wishing to modify the second contact list canrequest permission from the second chat session participant to modifythe first contact list.

[0032] An accessibility status can be used to indicate whether aparticular contact list is accessible. The accessibility status canindicate whether a contact list can be viewed. The contact list can beconfigured so that all chat session participants or only selected chatsession participants can view a particular contact list. Where aparticular contact list is not accessible, a participant wishing toaccess that contact list can be permitted to request permission toaccess that contact list. For example, the first chat sessionparticipant can be permitted to initiate a request requiring the secondchat session participant to grant permission to access the secondcontact list. Similarly, the second chat session participant can bepermitted to initiate a request requiring the first chat sessionparticipant to grant permission to access the first contact list.

[0033]FIG. 1 is a high level block diagram of an exemplary system forproviding contact management for chat session participants. Referring toFIG. 1, participants user#1 100, user#2 200, user#3 300 and user#4 400each have contact lists 110, 210, 310 and 410 respectively. Theparticipants 100, 200, 300 and 400 communicate via network 106. Network106 can be, for example, an intranet or the Internet. Although a networkis shown, this is not intended to limit the invention. The invention canalso be applicable in instances where chat session participantscommunicate via a dedicated connection.

[0034] Chat session participant 100 has a display 140, with a chatdisplay window 130, access and modification icon 120, 121, 122, 123 and124. For clarity, the chat display windows 130, 230, 330 and 430 will bethe same since there is only one chat session. Display 140 also hascontact windows 110 and 210. Contact window 110 displays the contactlist for chat session participant 100 and contact window 210 displaysthe contact list for chat session participant 200. Chat sessionparticipant 200 has a display 240, with a chat display window 230,access and modification icons 120, 121, 122, 123 and 124. Display 240also has contact windows 210 and 110. Chat session participant 300 has adisplay 340, with a chat display window 330, access and modificationicons 120, 121, 122, 123 and 124. Display 340 also has contact windows210 and 310. A third contact list 110 for chat session participant 300is viewable by chat session participant 300. Contact window 310 can bedisplayed outside the main or primary display window 340. The contactwindows 110, 210, 310 and 410 can be secondary windows and can appearwithin or external to the primary chat window 140, 240, 340 and 440respectively. Any of the contact windows 110, 210, 310 and 410 can bemoved within or outside the secondary windows 140, 240, 340 and 440respectively. Chat session participant 400 has a display 440, with achat display window 430, access and modification icons 120, 121, 122,123 and 124. Display 440 also has a contact window 410 which is thecontact list for chat session participant 4.

[0035] Chat display window, for example, 130, can display the chatinformation in a window located within the display 140 which can be aGUI. Chat display windows are known in the art of multiusercommunication. In a chat display window, each user's communication canbe identified by an alias. For example, chat session participant 100 hasuser#1 as an alias, chat 200 participant has user#2 as an alias, chatsession participant 300 has user#3 as an alias, and chat sessionparticipant 400 has user#4 as an alias.

[0036] Located next to each alias is an accessibility or modificationicon. An icon, for example 121, can be used to identify whether aparticular chat session participant's contact list is accessible. Icon121 has an “A” appearing next to communication for chat sessionparticipant 200 having alias user#2, indicates that the contact list forchat session participant 200 is accessible. This allows otherparticipants to view the contents of the contact list for participant200. As a result of the accessibility status, the contact list for chatsession participant 200 can be played in display 140 and 340. Aparticular participant can choose which participants in the chat sessionis able to view their contact list. For example, chat sessionparticipants 100, 200 and 300 have all prevented chat sessionparticipant 400 from viewing contact list 110, 210 and 310 respectively.As a result, chat session participant 400 cannot display contact list110, 210 and 310. In the case where a chat session participant choosesto prevent all other participants in the chat session from accessingtheir contact list, an icon, for example icon 124, can be utilized toindicate this inaccessibility. Icon 124 is one such icon that utilizesan “X” to indicate inaccessibility. It should be recognized that aparticipants own icon within their display window can always indicate anaccessible or modifiable status.

[0037] In addition to accessing a participant's contact list, aparticipant can be permitted to modify the contact list of another. Amodification icon, for example icons 122 and 123, can be utilized toindicate this modification status. As shown in displays 140, 240, 340,440, chat session participants 100 and 300 have identified their contactlists as being modifiable through the utilization of icons 122 and 123respectively. Since a particular chat session participant can change theaccessibility and/or modification status of their associated contactlist at any time, it is preferable to have this status indicated next tothe most recent communication for each chat session participant.

[0038]FIG. 2 illustrates an exemplary modification of contact list inaccordance with the inventive arrangements of FIG. 1. Referring to FIG.2 contact lists 110, 210 and 310 are associated with chat sessionparticipants 100, 200, and 300 having aliases user#1, user#2 and user#3respectively. For illustrative purposes, the chat session participantsall have their own computer businesses and intend to share informationregarding product distributors/suppliers. There are no restrictions onaccessibility for contact list 110, 210 and 310. Furthermore, contactlist 110 and 310 are identified as being modifiable by the presentationof an “M” for icons 120 and 123. Contact list 210 is accessible but itis not modifiable by any of the participants.

[0039] When chat session participant 300 compares the associated contactlist 310 to contact list 110 and 210, ABC Memory and EFG Harddisksrecords can be highlighted since they are not contained in contact list310. Chat session participant 300 can subsequently add ABC Memory andEFG Harddisks to contact list 310. The comparison will also show thatDeloris Disks and Parkway Drives records are not on contact lists 110and 210. Since contact list 110 is modifiable by chat sessionparticipant 300, chat session participant 300 can add the Deloris Disksand Parkway Drives records to contact list 110. Chat session participant300 must request permission from chat session participant 200 in orderto modify contact list 210 since the icon indicates and “A” and not “M.”If chat session participant 300 is given permission to modify contactlist 210 and the modification is made, chat session participant 200 canhave the option of accepting or rejecting the modification. If themodification is rejected by chat session participant 200, then themodification made by chat session participant 300 will have no effect oncontact list 210. If the modification made by chat session participant300 is accepted by chat session participant 200, then the addition ofthe Deloris Disks and Parkway Drives records to contact list 210 willbecome permanent. On further comparison, chat session participant 300will recognize that NOP Megabytes from contact list 210 and HIJ Memoryfrom contact list 110 is not in contact list 310. Chat sessionparticipant 300 can subsequently add HIJ Memory and NOP Megabytes tocontact list 310.

[0040] An alternative embodiment to the invention can include a methodfor providing contact management to parties engaged in a chatcommunication session. In this embodiment, each participant to thecommunication session can have an associated contact list. Hence, afirst participant to the communication session can have a first contactlist and a second participant to the communication list can have asecond contact list. Access to a first contact list can be provided to asecond participant to the communication session. Similar and/ordissimilar contacts that exist between contact records located in thefirst contact list and contact records located in the second contactlist can be identified. The second chat session participant can bepermitted to add selected dissimilar contact records located in thefirst contact list to the second contact list. If the second chatsession participant wants to modify the first contact list, adetermination can be made as to whether the first contact list can bemodified by the second chat session participant to the communicationsession. If the first contact list is modifiable by the secondparticipant, selected dissimilar contact records can be added to thefirst contact list.

[0041] To provide access to a particular contact list, an accessibilitystatus of the first contact list can be determined. If the accessibilitystatus indicates that the contact list is accessible, the secondparticipant is permitted to access the first contact list. Likewise, adetermination can be made as to whether the second contact list isaccessible by the first chat session participant. If the accessibilitystatus indicates that the second contact list is accessible by the firstchat session participant, the first chat session participant ispermitted to access the second contact list. Upon access, similarcontacts that exist between contact records located in the secondcontact list and contact records located in the first contact list canbe identified. If the second contact list is modifiable by the firstparticipant to the communication session, selected dissimilar contactrecords located in the second contact list can be added to the firstcontact list.

[0042] An icon can be displayed to represent whether a contact list fora participant to the communication session is accessible. While aparticular contact list is accessible, it might not be viewable. If thecontact list is also modifiable, then the display icon used to representthe accessibility can be modified to indicate that the contact list isalso modifiable. For example, and icon with the letter “A” can be usedto represent accessibility. The “A” can be modified to “M” which can beused to represent that the contact list is modifiable.

[0043] A further embodiment of the invention can include a method forproviding contact management to chat session participants. A first chatsession participant can have a first associated contact list and asecond chat session participant has a second associated contact list.The first chat session participant can be permitted to access the secondcontact list. Similarly, the second chat session participant can bepermitted to access the first contact list. A modification status can beprovided to indicate whether the first contact list is modifiable. Ifthe modification status indicates that the first contact list ismodifiable, then the addition of contact information to the firstcontact list is permitted. Similarly, a modification status can beprovided to indicate whether the second contact list is modifiable. Ifthe modification status indicates that the second contact list ismodifiable, then the addition of contact information to the secondcontact list is permitted. The modification status of the first and thesecond contact lists can be provided to selected chat sessionparticipants or to all chat session participants.

[0044] In a further embodiment of the invention, a system for contactmanagement is provided. The system can include a first contact list, asecond contact list and a computing application program. The firstcontact list can be associated with a first chat session participant,while the second contact list can be associated with a second chatsession participant. The computing application program can facilitatethe chat session that can occur between chat session participantsincluding the first and the second chat session participants. Thecomputing application program can be a chat application program. Chatapplication programs are known in the art and can include but are notlimited to, dedicated chat software, client/server applications andapplets. The computing application program can be hosted on a server orrun on an computer. Referring to FIG. 1, there is shown a chat server105 that can host a chat application program. The application programcan permit the second chat session participant to modify the firstcontact list and can also permit the first chat session participant tomodify the second contact list.

[0045] The system can further include a computer application server forexecuting the computing application program. Here, the computerapplication server can act as a host for hosting the execution of thecomputing application program. A first computing device can permit thefirst contact list to be viewed by the second chat session participantand a second computing device can permit the second contact list to beviewed by the first chat session participant. The computing devices caninclude, but are not limited to, computers, laptops, handheld computingdevices such as PDA's and handheld computers.

[0046] In a further embodiment of the invention, a GUI for providingcontact management for chat session participants is provided. The GUIcan include a chat display window for displaying communication for thechat session participants including a first chat session participant anda second chat session participant engaged in a chat session. The chatdisplay can be a secondary window that can be used for displayingcommunication text and/or controls. The chat display window can alsodisplay images of the participants and the controls can control, forexample, any audio information that can be communicated among theparties.

[0047] At least one contact window can be provided for displayingcontact information for at least one chat session participant engaged inthe chat session. The GUI can have at least one contact window which canappear as window pane within the chat display window. For example,referring to FIG. 1, user#3 has two contact list windows, 310 and 210located within chat window 340. Alternately, the GUI can have at leastone contact window that can be a window pane located external to thechat display window. For example, referring to FIG. 1, user#3 has onecontact list windows 110 located external to chat window 340. Thecontact windows can be configured so that they can be moved. Forexample, contact list window 110 can be moved into the chat window 340.A first modifiable status icon can be utilized for indicating whetherthe first contact list is accessible and, if the first contact list isaccessible, whether the first contact list is modifiable. A secondstatus icon can indicate whether the second contact list is accessibleand, if the second contact list is accessible, whether the secondcontact list is modifiable. The icons can be located next to thecorresponding communication text in a chat window. This can permitparticipants to see the current status of another participant's contactlist, since a chat session participant can choose to change theaccessibility and modification status of their associated contact listat any time.

[0048] In view of the foregoing, the invention permits participants to acommunication session to determine common contacts that exist betweenthe participants. Dependent on the accessibility of a particularparticipant's contact list, other participants to the communicationsession can view the information located in the particular participant'scontact list and copy contact information records for their benefit.Additionally, participants may even be privileged to add contactinformation records to the particular participant's contact list.

[0049] In a further aspect of the invention, a token of introduction canbe utilized for facilitating the exchange of contact list information.The token of introduction is analogous to an electronic letter ofrecommendation which can be given from one chat session participant toanother. The token of introduction can be an electronic message that, ata minimum, identifies a chat session participant that is to berecommended and the chat session participant making the recommendation.Additional information can include, but is not limited to, data such aspersonal preferences.

[0050] The token of introduction can be originated by a firstparticipant and can introduce a second participant to other participantsthat are known to the first participant. For illustrative purposes, atoken of introduction can be originated by user#1 and can introduceuser#2 to parties who are familiar with user#1. Whenever a party, forexample user#3, who is known to user#1 initiates a communication withuser#2, the token can automatically be transferred to user#3. Uponreceipt of the token, user#3 can choose to accept or reject the token.Upon acceptance of the token, user#3 can be given the option ofconverting the token to a contact list. If user#3 chooses to convert thetoken to a contact list entry, then the contact information for user #2can be placed in user#3's contact list. Otherwise, the token could beviewed and discarded. The contact list information for user#3 can alsobe placed in the contact list of user#2. The token of introductionoriginated by user#1 can be set to expire after a certain period of timehas elapsed. The transfer of the token originated by user#1 can betransparent to the party being recommended, namely, user#2.

[0051] In operation, a GUI can be utilized for creating the token ofintroduction. The GUI can have a fields such as, sender, receiver, andnote. The sender field can be automatically filled with the identity ofthe recommending chat session participant who creating the token ofintroduction. The sender field can be filled in with information such asthe identity of the chat session participant to whom the information isbeing sent. The note field can contain general information such aspreferences of the chat session participant who is being recommended. Asend icon on the GUI can be used to send the token. The token can remainin the system until it expires or upon the party to whom the token wassent initiating a chat session with the recommended party.Alternatively, the token can be dispatched to the party to whom it wassent immediately upon selecting the send icon in the GUI. If theparticipant to whom it was sent is not currently online, then themessage is sent once the participant comes back online.

[0052] Upon receipt of the token, the chat session participant receivingthe token can accept or decline the token. If the token is accepted,then the receiving chat session participant can add the recommended chatsession participant's contact information to their contact list. If therecommended party has a contact list that is modifiable, then thereceiving chat session participant can add their contact listinformation to the recommended chat session participant's contact list.

[0053] In light of the forgoing, the present invention can be realizedin hardware, software, or a combination of hardware and software. Amethod and system for providing contact management for Internet andIntranet chat rooms according to the present invention can be realizedin a centralized fashion in one computer system, or in a distributedfashion where different elements are spread across severalinterconnected computer systems. Any kind of computer system, or otherapparatus adapted for carrying out the methods described herein, issuited. A typical combination of hardware and software could be ageneral purpose computer system with a computer program that, when beingloaded and executed, controls the computer system such that it carriesout the methods described herein. The present invention can also beembedded in a computer program product, which comprises all the featuresenabling the implementation of the methods described herein, and whichwhen loaded in a computer system, is able to carry out these methods.

[0054] Computer program or application in the present context means anyexpression, in any language, code or notation, of a set of instructionsintended to cause a system having an information processing capabilityto perform a particular function either directly or after either or bothof the following a) conversion to another language, code or notation; b)reproduction in a different material form.

1. A method for providing contact list management in a chat session,comprising: providing access to a first contact list by a second chatsession participant, said first contact list associated with a firstchat session participant and said second chat session participantassociated with a second contact list; and providing access to saidsecond contact list by said first chat session participant.
 2. Themethod according to claim 1, further comprising the steps of:determining whether said first contact list is modifiable by said secondchat session participant; and if said first contact list is modifiableby said second chat session participant, permitting the modification ofsaid first contact list by said second chat session participant.
 3. Themethod according to claim 2, wherein said modification step comprisesthe step of adding contact information to said first contact list. 4.The method according to claim 2, further comprising the step ofdisplaying an icon to indicate whether said first contact list isaccessible.
 5. The method according to claim 4, further comprising thestep of altering said display icon to indicate that said first contactlist is modifiable.
 6. The method according to claim 5, furthercomprising the step of displaying an icon to indicate whether saidsecond contact list is accessible.
 7. The method according to claim 6,further comprising the step of altering said display icon to indicatethat said second contact list is modifiable.
 8. The method according toclaim 7, further comprising the steps of: permitting the selection ofsaid displayed icon for said first contact list and said displayed iconfor said second contact list by a third chat session participant havinga third contact list; comparing said selected first contact list andsaid selected second contact list to said third contact list; anddisplaying contacts that are uncommon to said selected first contactlist, said selected second contact list and said third contact listaccording to results from said comparing step.
 9. The method accordingto claim 8, further comprising the step of: displaying contacts that arecommon to said first selected contact list, said second selected contactlist, and said third contact list according to results from saidcomparing step.
 10. The method according to claim 9, further comprisingthe steps of: permitting any of said first chat session participant,said second chat session participant and said third chat sessionparticipant to modify any of said first contact list, said secondcontact list and said third contact list according to results from saidcomparing step; and permitting any of said chat session participantsassociated with said contact list to reject said modification.
 11. Themethod according to claim 7, wherein if said display icon indicates thatsaid first contact list is not modifiable, further comprising the stepof requesting said first chat session participant to allow said secondchat session participant to modify said contact list.
 12. The methodaccording to claim 7, wherein if said display icon indicates that saidsecond contact list is not modifiable, further comprising the step ofrequesting said second chat session participant to allow said first chatsession participant to modify said contact list.
 13. The methodaccording to claim 1, further comprising the steps of: requesting saidfirst chat session participant to provide access to said first contactlist; and requesting said second chat session participant to provideaccess to said second contact list.
 14. The method according to claim 1,further comprising the step of providing accessibility status toselected chat session participants.
 15. The method according to claim 1,further comprising the step of providing accessibility status to allactive chat session participants.
 16. A method for providing contactmanagement to parties engaged in a chat communication session, themethod comprising: providing access for a first contact list havingcontact records to a second participant to the communication session,said first contact list associated with a first participant to thecommunication session, said second participant having an associatedsecond contact list with contact records; identifying similar contactsbetween contact records located in said first contact list and contactrecords located in said second contact list; and adding selecteddissimilar contact records located in said first contact list to saidsecond contact list.
 17. The method according to claim 16, furthercomprising the steps of: determining if said first contact list ismodifiable by said second participant to the communication session; andif said first contact list is modifiable by said second participant,adding selected dissimilar contact records to said first contact list.18. The method according to claim 17, wherein said step of providingaccess to said first contact list further comprises the steps of:determining an accessibility status of said first contact list; andproviding access to said first contact list if said accessibility statusindicates that said second participant can access said first contactlist.
 19. The method according to claim 16, further comprising the stepsof: determining if said second contact list is accessible by said firstparticipant to the communication session; and if said second contactlist is accessible by said first participant, identifying similarcontacts between contact records located in said second contact list andcontact records located in said first contact list.
 20. The methodaccording to claim 19, further comprising the steps of: determining ifsaid second contact list is modifiable by said first participant to thecommunication session; and adding selected dissimilar contact recordslocated in said second contact list to said first contact list.
 21. Themethod according to claim 16, further comprising the step of displayingan icon to represent whether a contact list for a participant to thecommunication session is accessible.
 22. The method according to claim21, further comprising the step of modifying said icon to displaywhether said contact list for said participant to the communicationsession is modifiable.
 23. In a chat session having a plurality ofcommunicating chat session participants, a contact management methodcomprising: assembling and displaying a contact list in a GUI associatedwith one of the chat session participants; and accepting modificationsto said contact list by another chat session participant.
 24. A methodfor providing contact management in a chat session, comprising: sendinga token of introduction originated by a first chat session participanthaving a first contact list, to a second chat session participant havinga second contact list, said token of introduction providing arecommendation for said second chat session participant; transferringsaid token of introduction to a third chat session participant who isknown to said first chat session participant, said third chat sessionparticipant having a third contact list; and if said third chat sessionparticipant accepts said token of introduction, modifying said thirdcontact list with contact information for said second chat sessionparticipant.
 25. The method according to claim 24, further comprisingmodifying said second contact list with information for said third chatsession participant.
 26. The method according to claim 25, furthercomprising discarding said token of introduction upon expiration of aspecified period of time.
 27. The method according to claim 24, furthercomprising executing said transferring step upon said third chat sessionparticipant initiating a chat session with said second chat sessionparticipant.
 28. A system for providing contact management, comprising:a first contact list, said first contact list associated with a firstchat session participant; a second contact list, said second contactlist associated with a second chat session participant, said second chatsession participant engaged in a chat session with said first chatsession participant; and a computing application program facilitatingsaid chat session, said application program permitting said second chatsession participant to modify said first contact list and permittingsaid first chat session participant to modify said second contact list.29. The system according to claim 28, further comprising a computerapplication server for executing said computing application program. 30.The system according to claim 28, further comprising a first computingdevice for permitting said first contact list to be viewed by saidsecond chat session participant and a second computing device permittingsaid second contact list to be viewed by said first chat sessionparticipant.
 31. A GUI for providing contact management for chat sessionparticipants, comprising: a chat display window for displaying a firstchat session participant and a second chat session participant engagedin a chat session; and at least one contact window for displayingcontact information for at least one chat session participant engaged insaid chat session.
 32. The GUI according to claim 31, wherein said atleast one contact window is a window pane within said chat displaywindow.
 33. The GUI according to claim 32, wherein said at least onecontact window is a window pane external to said chat display window.34. The GUI according to claim 31, further comprising a first modifiablestatus icon which indicates whether said first contact list isaccessible and, if said first contact list is accessible, whether saidfirst contact list is modifiable.
 35. The GUI according to claim 31,further comprising a second status icon which indicates whether saidsecond contact list is accessible and, if said second contact list isaccessible, whether said second contact list is modifiable.
 36. Amachine readable storage having stored thereon, a computer programhaving a plurality of code sections, said code sections executable by amachine for causing the machine to perform the steps of: providingaccess to a first contact list associated with a first chat sessionparticipant by a second chat session participant associated with asecond contact list, said providing step facilitating contact managementfor a chat session; and providing access to said second contact list bysaid first chat session participant.
 37. The machine readable storageaccording to claim 36, further comprising: determining whether saidfirst contact list is modifiable by said second chat sessionparticipant; and if said first contact list is modifiable by said secondchat session participant, permitting the modification of said firstcontact list by said second chat session participant.
 38. The machinereadable storage according to claim 37, wherein said modification stepcomprises adding contact information to said first contact list.
 39. Themachine readable storage according to claim 37, further comprising thestep of displaying an icon to indicate whether said first contact listis accessible.
 40. The machine readable storage according to claim 39,further comprising the step of altering said display icon to indicatethat said first contact list is modifiable.
 41. The machine readablestorage according to claim 40, further comprising the step of displayingan icon to indicate whether said second contact list is accessible. 42.The machine readable storage according to claim 41, further comprisingthe step of altering said display icon to indicate that said secondcontact list is modifiable.
 43. The machine readable storage accordingto claim 42, further comprising the steps of: permitting the selectionof said displayed icon for said first contact list and said displayedicon for said second contact list by a third chat session participanthaving a third contact list; comparing said selected first contact listand said selected second contact list to said third contact list; anddisplaying contacts that are uncommon to said selected first contactlist, said selected second contact list and said third contact listaccording to results from said comparing step.
 44. The machine readablestorage according to claim 43, further comprising the step of:displaying contacts that are common to said first selected contact list,said second selected contact list, and said third contact list accordingto results from said comparing step.
 45. The machine readable storageaccording to claim 44, further comprising the steps of: permitting anyof said first chat session participant, said second chat sessionparticipant and said third chat session participant to modify any ofsaid first contact list, said second contact list and said third contactlist according to results from said comparing step; and permitting anyof said chat session participants associated with said contact list toreject said modification.
 46. The machine readable storage according toclaim 42, wherein if said display icon indicates that said first contactlist is not modifiable, further comprising the step of requesting saidfirst chat session participant to allow said second chat sessionparticipant to modify said contact list.
 47. The machine readablestorage according to claim 42, wherein if said display icon indicatesthat said second contact list is not modifiable, further comprising thestep of requesting said second chat session participant to allow saidfirst chat session participant to modify said contact list.
 48. Themachine readable storage according to claim 36, further comprising thesteps of: requesting said first chat session participant to provideaccess to said first contact list; and requesting said second chatsession participant to provide access to said second contact list. 49.The machine readable storage according to claim 36, further comprisingthe step of providing accessibility status to selected chat sessionparticipants.
 50. The machine readable storage according to claim 36,further comprising the step of providing accessibility status to allactive chat session participants.
 51. A machine readable storage havingstored thereon, a computer program having a plurality of code sections,said code sections executable by a machine for causing the machine toperform the steps of: providing access to a first contact list for afirst participant to a communication session to a second participant tothe communication session, said second participant having a secondcontact list, said providing step facilitating contact management forparties engaged in a chat communication session, said first and saidsecond contact list having contact records; identifying similar contactsbetween contact records located in said first contact list and contactrecords located in said second contact list; and adding selecteddissimilar contact records located in said first contact list to saidsecond contact list.
 52. The machine readable storage according to claim51, further comprising the steps of: determining if said first contactlist is modifiable by said second participant to the communicationsession; and if said first contact list is modifiable by said secondparticipant, adding selected dissimilar contact records to said firstcontact list.
 53. The machine readable storage according to claim 52,wherein said step of providing contact list to a first participantfurther comprises the steps of: determining an accessibility status ofsaid first contact list; and providing access to said first contact listif said accessibility status indicates that said second participant canaccess said first contact list.
 54. The machine readable storageaccording to claim 51, further comprising the steps of: determining ifsaid second contact list is accessible by said first participant to thecommunication session; and if said second contact list is accessible bysaid first participant, identifying similar contacts between contactrecords located in said second contact list and contact records locatedin said first contact list.
 55. The machine readable storage accordingto claim 54, further comprising the steps of: determining if said secondcontact list is modifiable by said first participant to thecommunication session; and adding selected dissimilar contact recordslocated in said second contact list to said first contact list.
 56. Themachine readable storage according to claim 55, further comprising thestep of displaying an icon to represent whether a contact list for aparticipant to the communication session is accessible.
 57. The machinereadable storage according to claim 56, further comprising the step ofmodifying said icon to display whether said contact list for saidparticipant to the communication session is modifiable.
 58. A machinereadable storage having stored thereon, a computer program having aplurality of code sections, said code sections executable by a machinefor causing the machine to perform the steps of: assembling anddisplaying a contact list in a GUI associated with a chat sessionparticipant, said chat session participant engaged in a chat sessionhaving a plurality of communicating chat session participants; andaccepting modifications to said contact list by another chat sessionparticipant.
 59. A machine readable storage having stored thereon, acomputer program having a plurality of code sections, said code sectionsexecutable by a machine for causing the machine to perform the steps of:sending a token of introduction originated by a first chat sessionparticipant having a first contact list, to a second chat sessionparticipant having a second contact list, said token of introductionproviding a recommendation for said second chat session participant,said sending step for providing contact management in a chat session;transferring said token of introduction to a third chat sessionparticipant who is known to said first chat session participant, saidthird chat session participant having a third contact list; and if saidthird chat session participant accepts said token of introduction,modifying said third contact list with contact information for saidsecond chat session participant.
 60. The machine readable storageaccording to claim 59, further comprising modifying said second contactlist with information for said third chat session participant.
 61. Themachine readable storage according to claim 60, further comprisingdiscarding said token of introduction upon expiration of a specifiedperiod of time.
 62. The machine readable storage according to claim 59,further comprising executing said transferring step upon said third chatsession participant initiating a chat session with said second chatsession participant.